#1.7 php Типы данных

РНР является языком с нестрогой типизацией — тип переменной определяется на основе ее значения. Тем не менее, следует иметь представление о типах данных, которые присутствуют в РНР. Всего их восемь, и все они перечислены ниже:

  • boolean. Логический тип, содержит значения TRUE или FALSE.
  • integer. Целое число.
  • float. Вещественное число.
  • string. Текст произвольной длины.
  • array. Массив.
  • object. Объект.
  • resource. Ресурс (например, файл).
  • NULL. Значение NULL.

Обычно заботиться о типах данных не следует — тип определятся автоматически при создании переменной. Например, создание переменной строкового типа выглядит следующим образом:

$variable = "Доброе утро!";

Создание переменной вещественного типа:

$variable = 1.2345;

Создание переменной логического типа:

$variable = TRUE;

В данном случае тип переменной определяется однозначно. Трудности начинаются при смешивании различных типов данных в одном выражении, например, при сложении целого числа и строки и т.п. Ниже приведено несколько примеров подобных выражений:

<?php //Тип и значение переменной:
$variable = "О"; // строка "О"
$variable = $variable + 2; // целое число 2
$variable = $variable +1.1; // $вещественное число 3.1
$variable =2 + "8 apples"; // целое число 10
?>

Для предотвращения потенциальных проблем не следует смешивать различные типы данных. Но даже и в таком случае РНР выполняет автоматическое неявное преобразование типов.

Если же требуется выполнить явное преобразование типа, то требуемый тип должен быть указан слева от имени переменной в круглых скобках. Ниже приведено несколько примеров явного преобразования типов:

$int_variable = (integer) $variable;
$float_variable = (float) $variable;
$string_jyariable = (string) $variable;

При преобразовании в логический тип boolean, следующие значения преобразуются в значение FALSE (все остальные значения, включая все ресурсы, преобразуются в TRUE):

  • Логическое FALSE.
  • Целое число $0$.
  • Вещественное число $0.0$.
  • Пустая строка и строка "$0$".
  • Массив с нулевым количеством элементов.
  • Объект, не имеющий свойств.
  • Специальный тип NULL.

При преобразовании в целое число значения других типов преобразуются следующим образом:

  • Логическое FALSE преобразуется в целое число $0$, логическое TRUE преобразуется в целое число $1$.
  • Вещественные числа округляются в меньшую сторону.

При преобразовании в вещественное число сперва осуществляется преобразование в целочисленное значение. Возможно также преобразование строковых значений в численные типы данных, но при этом имеется ряд особенностей (см. гл.З)

В следующей главе содержится описание основных операторов и управляющих структур языка РНР, при помощи которых можно создавать полноценные программы.

Key Words for FKN + antitotal forum (CS VSU):

vedro-compota's picture

У нас есть примечание к этой странице: https://fkn.ktu10.com/?q=node/9707

_____________
матфак вгу и остальная классика =)